package nft

import (
	"github.com/gin-gonic/gin"
	"net/http"
	"ppa/model"
	"strconv"
)

// GetNftTopList
// @Summary 获取热门NFT列表
// @Tags 首页列表
// @Produce  json
// @Description 直接获取热门NFT列表
// @Param offset query int true "offset"
// @Param limit query int true "limit"
// @Success 200   {object} model.Nft
// @Router /nft/list [get]
func GetNftTopList(c *gin.Context) {
	offset,_:= strconv.Atoi(c.DefaultQuery("offset","0"))
	limit,_ := strconv.Atoi(c.DefaultQuery("limit","10"))
	resData,err:= model.GetNftTopList(offset,limit)
	if err != nil {
		c.JSON(http.StatusLengthRequired,gin.H{"message":err.Error()})
		return
	}
	c.JSON(http.StatusOK,gin.H{"data":resData})
	return

}


// GetNftListByWhere
// @Summary 根据条件获取NFT列表(合集列表)
// @Tags NFT中心
// @Produce  json
// @Description 根据条件获取NFT列表  collection_id 表示合集列表    owner_user_id 表示我拥有的   user_id  表示我创建的
// @Param collection_id query int false "collection_id"
// @Param owner_user_id query int false "owner_user_id"
// @Param user_id query int false "user_id"
// @Success 200   {object} model.Nft
// @Router /collection/nft/list [get]
func GetNftListByWhere(c *gin.Context) {
	var nft model.Nft
	if err := c.ShouldBind(&nft);err != nil{
		c.JSON(http.StatusBadRequest,gin.H{"message":err.Error()})
		return
	}
	resData,err:= nft.GetNftListByWhere()
	if err != nil {
		c.JSON(http.StatusLengthRequired,gin.H{"message":err.Error()})
		return
	}
	c.JSON(http.StatusOK,gin.H{"data":resData})
	return

}